package com.cn.wanxi.thread;

public class MySynchronized {
    public static void main(String[] args) {
//        男女朋友面对面在坐着准备吃饭，但是桌子两端各只有一只筷子，只有都拿到两只筷子才能吃饭A和B筷子
        new Thread(new Runnable() {
            @Override
            public void run() {
//                try {
//                    Thread.sleep(1000);
//                } catch (InterruptedException e) {
//                    e.printStackTrace();
//                }
//                synchronized ("A") {
                    System.out.println(Thread.currentThread().getName() + "拿到A筷子了");
//                    synchronized ("B") {
                        System.out.println(Thread.currentThread().getName() + "拿到A筷子,同时拿到B筷子，可以吃饭了");
//                    }
//                }
            }
        }, "男朋友").start();
        new Thread(new Runnable() {
            @Override
            public void run() {
                synchronized ("B") {
                    System.out.println(Thread.currentThread().getName() + "拿到B筷子了");
                    synchronized ("A") {
                        System.out.println(Thread.currentThread().getName() + "拿到B筷子,同时拿到A筷子，可以吃饭了");
                    }
                }
            }
        }, "女朋友").start();

    }
}